Circuit to provide signal to sense array

ABSTRACT

A circuit for generating a voltage is disclosed. The voltage has an amplitude greater than an available power supply. The circuit includes a driver to supply the voltage on an output terminal to an electrode of a touch sense array. The circuit also includes a charge pump array coupled to the driver. The charge pump array includes an array of charge pumps to supply an input voltage to the driver. The circuit also includes a feedback circuit coupled to the charge pump array. The feedback circuit is configured to measure the input voltage and to select different combinations of the array of charge pumps to maintain the voltage on the output terminal.

RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional PatentApplication No. 61/472,152 filed Apr. 5, 2011, the disclosure of whichis incorporated herein by reference in its entirety.

TECHNICAL FIELD

The present invention relates generally to capacitive touch sensearrays, and more particularly, to a circuit for generating aprogrammable supply voltage having an amplitude greater than anavailable power supply voltage and configured to drive a capacitivetouch sense arrays.

BACKGROUND

Computing devices, such as notebook computers, personal data assistants(PDAs), kiosks, and mobile handsets, have user interface devices, whichare also known as human interface devices (HID). One user interfacedevice that has become more common is a touch-sensor pad (also commonlyreferred to as a touchpad). A basic notebook computer touch-sensor pademulates the function of a personal computer (PC) mouse. A touch-sensorpad is typically embedded into a PC notebook for built-in portability. Atouch-sensor pad replicates mouse X/Y movement by using two defined axeswhich contain a collection of sensor elements that detect the positionof one or more conductive objects, such as a finger. Mouse right/leftbutton clicks can be replicated by two mechanical buttons, located inthe vicinity of the touchpad, or by tapping commands on the touch-sensorpad itself. The touch-sensor pad provides a user interface device forperforming such functions as positioning a pointer, or selecting an itemon a display. These touch-sensor pads may include multi-dimensionalsensor arrays for detecting movement in multiple axes. The sensor arraymay include a one-dimensional sensor array, detecting movement in oneaxis. The sensor array may also be two dimensional, detecting movementsin two axes.

Another user interface device that has become more common is a touchscreen. Touch screens, also known as touchscreens, touch windows, touchpanels, or touchscreen panels, are transparent display overlays whichare typically either pressure-sensitive (resistive or piezoelectric),electrically-sensitive (capacitive), acoustically-sensitive (surfaceacoustic wave (SAW)) or photo-sensitive (infra-red). The effect of suchoverlays allows a display to be used as an input device, removing thekeyboard and/or the mouse as the primary input device for interactingwith the display's content. Such displays can be attached to computersor, as terminals, to networks. Touch screens have become familiar inretail settings, on point-of-sale systems, on ATMs, on mobile handsets,on kiosks, on game consoles, and on PDAs where a stylus is sometimesused to manipulate the graphical user interface (GUI) and to enter data.A user can touch a touch screen or a touch-sensor pad to manipulatedata. For example, a user can apply a single touch, by using a finger totouch the surface of a touch screen, to select an item from a menu.

A certain class of touch sense arrays includes a first set of linearelectrodes separated and a second set of electrodes arranged at rightangles and separated by a dielectric layer. The resulting intersectionsform a two-dimensional array of capacitors, referred to as senseelements. Touch sense arrays can be scanned in several ways, one ofwhich (mutual-capacitance sensing) permits individual capacitiveelements to be measured. Another method (self-capacitance sensing) canmeasure an entire sensor strip, or even an entire sensor array, withless information about a specific location, but performed with a singleread operation.

The two-dimensional array of capacitors, when placed in close proximity,provides a means for sensing touch. A conductive object, such as afinger or a stylus, coming in close proximity to the touch sense arraycauses changes in the total capacitances of the sense elements inproximity to the conductive object. These changes in capacitance can bemeasured to produce a “two-dimensional map” that indicates where thetouch on the array has occurred.

One way to measure such capacitance changes is to form a circuitcomprising a signal driver (e.g., an AC current or a voltage source(transmit or “TX signal”)) which is applied to each horizontally alignedconductor in a multiplexed fashion. The charge accumulated on each ofthe capacitive intersections are sensed and similarly scanned at each ofthe vertically aligned electrodes in synchronization with the appliedcurrent/voltage source. This charge is then measured, typically with aform of charge-to-voltage converter (i.e., receive or “RX signal”),which is sampled-and-held for an A/D converter to convert to digitalform for input to a processor. The processor, in turn, renders thecapacitive map and determines the location of a touch.

Conventional capacitive sensing driving circuits suffer from a number ofdeficiencies. The driving or “TX signal” is frequently a square waveoperated from an integrated circuit's (IC's) supply voltage, e.g., 2.5V.Unfortunately, the magnitude of the resulting TX signals for measuring acapacitance change between electrodes of the touch sense array may be onthe order of a few percent. Since TX signal circuits are often noisy, itbecomes difficult to distinguish a measured signal due to the TX signalcomponent from a noise signal component. As a result, such measurementshave a low signal-to-noise (SNR) ratio.

If a larger TX signal is used, the sensitivity of the sensing circuitincreases proportionally (since system and environmental noise stays thesame). Thus, the signal-to-noise ratio (SNR) can be improved by raisingthe TX voltage. Producing a TX voltage higher than the supply voltage ofan IC requires a boosting circuit. A conventional method to achieve thatboost is to employ a charge pump. A charge pump uses multiple stages toraise the voltage across a capacitor above the supply voltage. Morestages result in a higher TX voltage. The last stage of the charge pumpthen produces a final voltage and stores it in a “tank” or “reservoir”capacitor. A load can then be connected to that capacitor.

In a touch application, the resulting RX signal typically includes alarge amount of ripple noise due to the pumping action of the stages inthe charge pump, which operate in the MHz frequency range. To reducenoise from ripple and other sources, the final “tank” or “reservoir”capacitor is fairly large: on the order of a few nF or more. Such acapacitor generally cannot be implemented on-chip and is thereforecost-prohibitive.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of the present invention will be more readily understoodfrom the detailed description of exemplary embodiments presented belowconsidered in conjunction with the attached drawings in which likereference numerals refer to similar elements and in which:

FIG. 1 illustrates a block diagram of one embodiment of an electronicsystem including a processing device that may be configured to measurecapacitances from a flexible touch-sensing surface and calculate ordetect the amount of force applied to the flexible touch-sensingsurface.

FIG. 2 is a block diagram illustrating one embodiment of a capacitivetouch sensor array and a capacitance sensor that converts measuredcapacitances to coordinates.

FIG. 3 depicts an electrical block diagram of one embodiment of thesignal generator configured to produce a TX signal to be supplied to thetransmit electrodes of the touch sense array of FIG. 2.

FIG. 4 is a block diagram of one embodiment of the components of thecharge pump array, the programmable current driver, the first feedbackcircuit, and the second feedback circuit, employed in the electronicsystem of FIG. 1.

FIG. 5 is a block diagram of one embodiment of the components of thecharge pump array, the programmable current driver, and the firstfeedback circuit of FIG. 4 that illustrates the operation of the chargepumps of the charge pump array.

FIG. 6 is a block diagram of one embodiment of the components of afeedback scaler circuit of FIG. 4.

FIG. 7 is a block diagram of one embodiment of the components of areference generator circuit of FIG. 4.

FIG. 8 is a table of thermometer codes implemented by a thermometerdecoder FIG. 4.

FIG. 9 is a block diagram of one embodiment of the components of thecharge pump array of FIG. 4.

FIG. 10 is a block diagram of one embodiment of the components of asingle stage of a sub-charge pump of the charge pump array of FIG. 4.

FIG. 11 is a block diagram of one embodiment of the components of thehigh voltage programmable current driver of FIG. 3.

FIG. 12 is a flow diagram of one embodiment of a method for operatingthe stimulus circuit of FIG. 4.

FIG. 13 is a flow diagram illustrating one embodiment of selectingdifferent combinations of the charge pumps of FIG. 12.

DETAILED DESCRIPTION

Embodiments of the invention provide a circuit for generating a targetvoltage having an amplitude greater than an available power supply andconfigured to drive a capacitive a touch sense array. In one embodiment,the circuit includes a driver to supply the target voltage on an outputterminal to an electrode of the touch sense array. The circuit alsoincludes a charge pump array coupled to the driver. The charge pumparray includes an array of charge pumps to supply an input voltage tothe driver. The circuit also includes a feedback circuit coupled to thecharge pump array. The feedback circuit is configured to measure theinput voltage and to select different combinations of the array ofcharge pumps to maintain the target voltage on the output terminal.

In one embodiment, the first feedback circuit selects a firstcombination of the charge pumps when the input voltage is more than athreshold level and selects a second combination of charge pumps whenthe input voltage is less than the threshold voltage. In one embodiment,the second combination includes fewer charge pumps than the firstcombination. The input voltage is programmable.

In one embodiment, the first feedback circuit includes a first feedbackscaler circuit coupled to the charge pump array and configured toproduce a first voltage proportional to the input voltage. The firstfeedback circuit further includes a comparator coupled to the feedbackscaler circuit. A reference generator produces a reference voltagecoupled to the comparator. The reference generator is configured toselect the input voltage.

In one embodiment, the circuit may also include a second feedbackcircuit coupled to the charge pump array and configured to provide areference voltage to the charge pump array.

The embodiments described herein provide for several improvements overconventional charge pump designs. By increasing the TX voltage above asupply signal, SNR is improved. The embodiments described herein alsodecrease power consumption and SNR in several other ways. A clock ripplereduction scheme is applied in order to reduce clock energy within asingle pumping cycle. Small time delays are introduced between firingmultiple stages of each sub-charge pump of the charge pump array to“spread” current transitions of clocked circuits across a slightlybroader time window. This avoids large instantaneous energy spikes, andserves to reduce EMI (i.e., high-frequency coupling onto othercomponents in the system, such as an RF radio). Furthermore, thecomparator provides a “threshold” signal which a logic circuitinterprets to alter the pump strength (once the output has settled).This serves to reduce output ripple introduced to the touch sense array.In a related embodiment, the input voltage may be applied to aprogrammable current driver that provides a TX signal that does not havevery sharp edges (low dV/dt). This reduces current spikes when theseedges are applied to a capacitive load, such as the touch sense array.

FIG. 1 illustrates a block diagram of one embodiment of an electronicsystem 100 including a processing device 110 that may be configured tomeasure capacitances from a flexible touch-sensing surface and calculateor detect the amount of force applied to the flexible touch-sensingsurface. The electronic system 100 includes a touch-sensing surface 116(e.g., a touch screen, or a touch pad) coupled to the processing device110 and a host 150. In one embodiment, the touch-sensing surface 116 isa two-dimensional user interface that uses a sensor array 121 to detecttouches on the surface 116.

In one embodiment, the sensor array 121 includes sensor elements121(1)-121(N) (where N is a positive integer) that are disposed as atwo-dimensional matrix (also referred to as an XY matrix). The sensorarray 121 is coupled to pins 113(1)-113(N) of the processing device 110via one or more analog buses 115 transporting multiple signals. In thisembodiment, each sensor element 121(1)-121(N) is represented as acapacitor. The self capacitance of each sensor in the sensor array 121is measured by a capacitance sensor 101 in the processing device 110.

In one embodiment, the capacitance sensor 101 may include a relaxationoscillator or other means to convert a capacitance into a measuredvalue. The capacitance sensor 101 may also include a counter or timer tomeasure the oscillator output. The capacitance sensor 101 may furtherinclude software components to convert the count value (e.g.,capacitance value) into a sensor element detection decision (alsoreferred to as switch detection decision) or relative magnitude. Inanother embodiment, the capacitance sensor 101 includes a charge pumparray 330 to be described below.

It should be noted that there are various known methods for measuringcapacitance, such as current versus voltage phase shift measurement,resistor-capacitor charge timing, capacitive bridge divider, chargetransfer, successive approximation, sigma-delta modulators,charge-accumulation circuits, field effect, mutual capacitance,frequency shift, or other capacitance measurement algorithms. It shouldbe noted however, instead of evaluating the raw counts relative to athreshold, the capacitance sensor 101 may be evaluating othermeasurements to determine the user interaction. For example, in thecapacitance sensor 101 having a sigma-delta modulator, the capacitancesensor 101 is evaluating the ratio of pulse widths of the output,instead of the raw counts being over or under a certain threshold.

In one embodiment, the processing device 110 further includes processinglogic 102. Operations of the processing logic 102 may be implemented infirmware; alternatively, it may be implemented in hardware or software.The processing logic 102 may receive signals from the capacitance sensor101, and determine the state of the sensor array 121, such as whether anobject (e.g., a finger) is detected on or in proximity to the sensorarray 121 (e.g., determining the presence of the object), where theobject is detected on the sensor array (e.g., determining the locationof the object), tracking the motion of the object, or other informationrelated to an object detected at the touch sensor.

In another embodiment, instead of performing the operations of theprocessing logic 102 in the processing device 110, the processing device110 may send the raw data or partially-processed data to the host 150.The host 150, as illustrated in FIG. 1, may include decision logic 151that performs some or all of the operations of the processing logic 102.Operations of the decision logic 151 may be implemented in firmware,hardware, software, or a combination thereof. The host 150 may include ahigh-level Application Programming Interface (API) in applications 152that perform routines on the received data, such as compensating forsensitivity differences, other compensation algorithms, baseline updateroutines, start-up and/or initialization routines, interpolationoperations, or scaling operations. The operations described with respectto the processing logic 102 may be implemented in the decision logic151, the applications 152, or in other hardware, software, and/orfirmware external to the processing device 110. In some otherembodiments, the processing device 110 is the host 150.

In another embodiment, the processing device 110 may also include anon-sensing actions block 103. This block 103 may be used to processand/or receive/transmit data to and from the host 150. For example,additional components may be implemented to operate with the processingdevice 110 along with the sensor array 121 (e.g., keyboard, keypad,mouse, trackball, LEDs, displays, or other peripheral devices).

In one embodiment, the electronic system 100 is implemented in a devicethat includes the touch-sensing surface 116 as the user interface, suchas handheld electronics, portable telephones, cellular telephones,notebook computers, personal computers, personal data assistants (PDAs),kiosks, keyboards, televisions, remote controls, monitors, handheldmulti-media devices, handheld video players, gaming devices, controlpanels of a household or industrial appliances, or other computerperipheral or input devices. Alternatively, the electronic system 100may be used in other types of devices. It should be noted that thecomponents of electronic system 100 may include all the componentsdescribed above. Alternatively, electronic system 100 may include onlysome of the components described above, or include additional componentsnot listed herein.

FIG. 2 is a block diagram illustrating one embodiment of a capacitivetouch sensor array 121 and a capacitance sensor 101 that convertsmeasured capacitances to coordinates. The coordinates are calculatedbased on measured capacitances. In one embodiment, sensor array 121 andcapacitance sensor 101 are implemented in a system such as electronicsystem 100. Sensor array 121 includes a matrix 225 of N×M electrodes (Nreceive electrodes and M transmit electrodes), which further includestransmit (TX) electrode 222 and receive (RX) electrode 223. Each of theelectrodes in matrix 225 is connected with capacitance sensor 101through demultiplexer 212 and multiplexer 213.

Capacitance sensor 101 includes multiplexer control 211, demultiplexer212 and multiplexer 213, clock generator 214, signal generator 215,demodulation circuit 216, and analog to digital converter (ADC) 217. ADC217 is further coupled with touch coordinate converter 218. Touchcoordinate converter 218 outputs a signal to the processing logic 102.

In one embodiment, processing logic 102 may be a processing core 102.The processing core may reside on a common carrier substrate such as,for example, an integrated circuit (“IC”) die substrate, a multi-chipmodule substrate, or the like. Alternatively, the components ofprocessing core 102 may be one or more separate integrated circuitsand/or discrete components. In one exemplary embodiment, processing core102 is configured to provide intelligent control for the ProgrammableSystem on a Chip (“PSoC®”) processing device, manufactured by CypressSemiconductor Corporation, San Jose, Calif. Alternatively, processingcore 102 may be one or more other processing devices known by those ofordinary skill in the art, such as a microprocessor or centralprocessing unit, a controller, special-purpose processor, digital signalprocessor (“DSP”), an application specific integrated circuit (“ASIC”),a field programmable gate array (“FPGA”), or the like. In oneembodiment, the processing core 102 and the other components of theprocessing device 110 are integrated into the same integrated circuit.

It should also be noted that the embodiments described herein are notlimited to having a configuration of a processing core 102 coupled to ahost 150, but may include a system that measures the capacitance on thetouch sense array 121 and sends the raw data to a host computer where itis analyzed by an application. In effect, the processing that is done byprocessing core 102 may also be done in the host. The host may be amicroprocessor, for example, as well as other types of processingdevices as would be appreciated by one of ordinary skill in the arthaving the benefit of this disclosure.

The components of the electronic system 100 excluding the touch sensearray 121 may be integrated into the IC of the processing core 102, oralternatively, in a separate IC. Alternatively, descriptions of theelectronic system 100 may be generated and compiled for incorporationinto other integrated circuits. For example, behavioral level codedescribing the electronic system 100, or portions thereof, may begenerated using a hardware descriptive language, such as VHDL orVerilog, and stored to a machine-accessible medium (e.g., CD-ROM, harddisk, floppy disk, etc.). Furthermore, the behavioral level code can becompiled into register transfer level (“RTL”) code, a netlist, or even acircuit layout and stored to a machine-accessible medium. The behaviorallevel code, the RTL code, the netlist, and the circuit layout allrepresent various levels of abstraction to describe the electronicsystem 100.

It should be noted that the components of the electronic system 100 mayinclude all the components described above. Alternatively, theelectronic system 100 may include only some of the components describedabove.

In one embodiment, the electronic system 100 is used in a notebookcomputer. Alternatively, the electronic device may be used in otherapplications, such as a mobile handset, a personal data assistant(“PDA”), a keyboard, a television, a remote control, a monitor, ahandheld multi-media device, a handheld video player, a handheld gamingdevice, or a control panel.

The transmit and receive electrodes in the electrode matrix 225 may bearranged so that each of the transmit electrodes overlap and cross eachof the receive electrodes such as to form an array of intersections,while maintaining galvanic isolation from each other. Thus, eachtransmit electrode may be capacitively coupled with each of the receiveelectrodes. For example, transmit electrode 222 is capacitively coupledwith receive electrode 223 at the point where transmit electrode 222 andreceive electrode 223 overlap.

Clock generator 214 supplies a clock signal to signal generator 215,which produces a TX signal 224 to be supplied to the transmit electrodesof touch sense array 121. In one embodiment, the signal generator 215includes a set of switches that operate according to the clock signalfrom clock generator 214. The switches may generate a TX signal 224 byperiodically connecting the output of signal generator 215 to a firstvoltage and then to a second voltage, wherein said first and secondvoltages are different. In another embodiment, the signal generator 215includes a charge pump array 330 to be described below.

The output of signal generator 215 is connected with demultiplexer 212,which allows the TX signal 224 to be applied to any of the M transmitelectrodes of touch sense array 121. In one embodiment, multiplexercontrol 211 controls demultiplexer 212 so that the TX signal 224 isapplied to each transmit electrode 222 in a controlled sequence.Demultiplexer 212 may also be used to ground, float, or connect analternate signal to the other transmit electrodes to which the TX signal224 is not currently being applied.

Because of the capacitive coupling between the transmit and receiveelectrodes, the TX signal 224 applied to each transmit electrode inducesa current within each of the receive electrodes. For instance, when theTX signal 224 is applied to transmit electrode 222 through demultiplexer212, the TX signal 224 induces an RX signal 227 on the receiveelectrodes in matrix 225. The RX signal 227 on each of the receiveelectrodes can then be measured in sequence by using multiplexer 213 toconnect each of the N receive electrodes to demodulation circuit 216 insequence.

The mutual capacitance associated with each intersection between a TXelectrode and an RX electrode can be sensed by selecting every availablecombination of TX electrode and an RX electrode using demultiplexer 212and multiplexer 213. To improve performance, multiplexer 213 may also besegmented to allow more than one of the receive electrodes in matrix 225to be routed to additional demodulation circuits 216. In an optimizedconfiguration, wherein there is a 1-to-1 correspondence of instances ofdemodulation circuit 216 with receive electrodes, multiplexer 213 maynot be present in the system.

When an object, such as a finger, approaches the electrode matrix 225,the object causes a decrease in the mutual capacitance between only someof the electrodes. For example, if a finger is placed near theintersection of transmit electrode 222 and receive electrode 223, thepresence of the finger will decrease the mutual capacitance betweenelectrodes 222 and 223. Thus, the location of the finger on the touchpadcan be determined by identifying the one or more receive electrodeshaving a decreased mutual capacitance in addition to identifying thetransmit electrode to which the TX signal 224 was applied at the timethe decreased mutual capacitance was measured on the one or more receiveelectrodes.

By determining the mutual capacitances associated with each intersectionof electrodes in the matrix 225, the locations of one or more touchcontacts may be determined. The determination may be sequential, inparallel, or may occur more frequently at commonly used electrodes.

In alternative embodiments, other methods for detecting the presence ofa finger or conductive object may be used where the finger or conductiveobject causes an increase in capacitance at one or more electrodes,which may be arranged in a grid or other pattern. For example, a fingerplaced near an electrode of a capacitive sensor may introduce anadditional capacitance to ground that increases the total capacitancebetween the electrode and ground. The location of the finger can bedetermined from the locations of one or more electrodes at which anincreased capacitance is detected.

The induced current signal 227 is rectified by demodulation circuit 216.The rectified current output by demodulation circuit 216 can then befiltered and converted to a digital code by ADC 217.

The digital code is converted to touch coordinates indicating a positionof an input on touch sensor array 121 by touch coordinate converter 218.The touch coordinates are transmitted as an input signal to theprocessing logic 102. In one embodiment, the input signal is received atan input to the processing logic 102. In one embodiment, the input maybe configured to receive capacitance measurements indicating a pluralityof row coordinates and a plurality of column coordinates. Alternatively,the input may be configured to receive row coordinates and columncoordinates.

In one embodiment, a system for tracking locations of contacts on atouch-sensing surface may determine a force magnitude for each of thecontacts based on the capacitance measurements from the capacitivesensor array. In one embodiment, a capacitive touch-sensing system thatis also capable of determining a magnitude of force applied to each of aplurality of contacts at a touch-sensing surface may be constructed fromflexible materials, such as PMMA, and may have no shield between thecapacitive sensor array and an LCD display panel. In such an embodiment,changes in capacitances of sensor elements may be caused by thedisplacement of the sensor elements closer to a VCOM plane of the LCDdisplay panel.

FIG. 3 depicts an electrical block diagram of one embodiment of thesignal generator 215 configured to produce the TX signal 224 to besupplied to the transmit electrodes of the touch sense array 121 of FIG.2. In an embodiment, the input TX signal 224 may be any periodic signalhaving a positive portion and a negative portion, including, forexample, a sine wave, a square wave, a triangle wave, etc. as would beappreciated by one of ordinary skill in the art having the benefit ofthis disclosure.

Returning again to FIG. 3, the signal generator 215 includes a chargepump array 330 of charge pumps 440 a-440 n. The charge pump array 330 isconfigured to supply a target voltage (e.g., 10 V) that is greater thana supply voltage (e.g., 2.5 V) used to supply all of the circuits of theelectronic system 100 except for the touch sense array 121. The touchsense array 121 may be driven by and coupled to a high voltageprogrammable current driver 332 which may be, for example, a combinationof current sources and current sinks 318, 320. The compliance voltage ofthe programmable current driver 332 may be configured to have a maximumvalue corresponding to the target voltage.

In one embodiment, the charge pump array 330 is coupled to a firstfeedback circuit 334 configured to measure a voltage on an outputterminal 442 of the charge pump array 330 to select differentcombinations of charge pumps 440 a-440 n to regulate power (i.e., tomaintain the target or compliance voltage of the programmable currentdriver 332). In another embodiment, the charge pump array 330 is furthercoupled to a second feedback circuit 336 configured to provide accurateregulation of the voltage on the output terminal 442 of the charge pumparray 330. The charge pump array 330 may be supplied with a clock signalfrom the clock generator 214 of FIG. 2.

FIG. 4 is a block diagram of one embodiment of the components of thecharge pump array 330, the programmable current driver 332, the firstfeedback circuit 334, and the second feedback circuit 336, employed inthe electronic system 100 of FIG. 1. The charge pump array 330 mayinclude a programmable combination of charge pumps 440 a-440 n (e.g., 10charge pumps) connected in parallel. The voltage on the output terminal442 of the charge pump array 330 may be a regulated DC level (e.g., 10V). The output terminal 442 of the charge pump array 330 may be coupledto a feedback scaler circuit 444 configured to produce a first voltageon an output terminal proportional to the voltage on the output terminal442 of the charge pump array 330. In one embodiment, the feedback scalercircuit 444 may be a resistive voltage scaler circuit with a scalingfactor of approximately 0.1. Alternatively, other scaling factors may beused as would be appreciated by one of ordinary skill in the art havingthe benefit of this disclosure. The feedback scaler circuit 444 may havetwo output terminals: one output terminal 446 coupled to an operationalamplifier (op-amp) 448 associated with the second feedback circuit 336and a second output terminal 450 coupled to a comparator 452 associatedwith the first feedback circuit 334. The voltage impressed on thecomparator 452 from the second output terminal 450 may be slightlygreater (e.g., about 15 mV) than that impressed on the op-amp 448.

A bandgap reference circuit 454 provides a reference voltage close tothe supply voltage that is stable over temperature, time, and currentdraw. The bandgap reference circuit 454 is coupled to a referencegenerator circuit 456 that has an output terminal 457 coupled to boththe comparator 452 and the op-amp 448. The output voltage of thereference generator circuit 456 is programmable and derived from thereference voltage. This permits the voltage on the output terminal 442of the charge pump array 330 to be set to values in the range of 3 V-10V. Alternatively, other output voltages may be used as would beappreciated by one of ordinary skill in the art having the benefit ofthis disclosure.

The second feedback circuit 336 is configured to provide a steady statevalue for the voltage on the output terminal 442 of the charge pumparray 330 (e.g., 10 V). The op-amp 448 controls a gate terminal of apass transistor 458. The source terminal of the pass transistor isconnected to the supply voltage (e.g., 2.5 V), while the drain terminalof the pass transistor 458 outputs a voltage, vdda_reg, that provides asupply for a final stage of a clock driver 460 for the charge pump array330. The charge pump array 330, the feedback scaler circuit 444, theop-amp 448, and the pass transistor 458 form a closed loop controlsystem (i.e., the second feedback circuit 336) that accurately regulatesthe target voltage on the output terminal 442 (e.g. 10V), which, in oneembodiment, is itself programmable (e.g., in a range of about 3V to 10V). In a steady state (i.e., when the voltage on the output terminal 442has settled), vdda_reg “sits” at just the right level to sustain thevoltage on the output terminal 442 of the charge pump array 330. (e.g.,10V).

FIG. 5 is a block diagram of one embodiment of the components of thecharge pump array 330, the programmable current driver 332 and the firstfeedback circuit 334 of FIG. 4 that illustrates the operation of thecharge pumps 440 a-440 n of the charge pump array 330. Referring now toFIGS. 4 and 5, in the first feedback circuit 334, the comparator 452provides a means for controlling output power (i.e., the voltage on theoutput terminal 442 of the charge pump array 330). When the voltage onthe output terminal 442 reaches approximately 98% of the programmedlevel (e.g., 9.8V for a 10V target voltage), the comparator 452 switchesstate to provide a trigger or “threshold” signal to a sequencer 462(i.e., external control logic). Since the voltage on the output terminal442 of the charge pump array 330 has nearly settled, it is no longernecessary to drive all of the charge pumps 440 a-440 n. Perhaps one ortwo charge pumps (e.g., 440 a and 440 b) are sufficient. Operating onfewer charge pumps reduces power consumption and may improve SNR byreducing output ripple emanating from the charge pump array 330.

As a result, the first feedback circuit 334 is configured to selectdifferent combinations of the charge pumps 440 a-440 n to maintain thevoltage on the output terminal 442 of the charge pump array 330 toprovide adequate power to the programmable current driver 332. In oneembodiment, the first feedback circuit 334 is configured to select afirst combination of the charge pumps 440 a-440 n (e.g., 10) when thevoltage on the output terminal 442 of the charge pump array 330 when theinput voltage is more than a threshold level and configured to select asecond combination of the charge pumps 440 a-440 n (e.g., 2) when thevoltage on the output terminal 442 of the charge pump array 330 is lessthan the threshold voltage. In one embodiment, the second combinationmay have fewer charge pumps than the first combination.

In another embodiment, the feedback circuit may measure and send avoltage proportional to the voltage on the output terminal 442 of thecharge pump array 330 to the processing core 102, and the processingcore 102 may select (using or without using the first feedback circuit334) the combinations.

More particularly, the sequencer 462 is a large digital control blockserving many functions. The sequencer 462 has full control over allswitches and activities in general in an entire touch-screen subsystem(TSS). Using the sequencer 462, all activities in an RX and TX circuitsoccur in a fully synchronous fashion. The sequencer circuit 462 isimplemented as part of the PSoC® processing device comprised of customuniversal digital blocks (UDB). As used herein, UDBs are a collection ofuncommitted logic (PLD) and structural logic (Datapath) optimized tocreate all common embedded peripherals and customized functionality thatare application or design specific. UDBs may be employed to implement avariety of general and specific digital logic devices including, but notlimited to, field programmable gate arrays (FPGA), programmable arraylogic (PAL), complex programmable logic devices (CPLD) etc.

Only a small portion of the sequencer 462 is employed in the firstfeedback circuit 334. To select between, for example, two combinationsof charge pumps 440 a-440 n, the sequencer 462 is configured to selectbetween a “ramp” setting (e.g., full power, 10 pumps ON), and a “keep”setting (e.g., low power, 1 or 2 pumps ON). The threshold signal directsthe sequencer 462 to switch between the two.

Within the sequencer is a register holding 2×4-bit data. When thesequencer receives a ‘0’ on “threshold”, it outputs one 4-bit data, andwhen it receives a ‘1’ on “threshold”, it outputs the other 4-bit data.In an embodiment, all ten parallel pumps may be employed for maximumpower by setting the 4-bit data to be 10 decimal, i.e., all pumps areON. When the voltage level is approximately reached (and the touch sensearray 121 is charged), there is no need to continue pumping at fullpower. The number of parallel pumps operating may then be throttled. Thecomparator 452 “signals” the sequencer to switch to the other 4-bit data(which may, for example, contain a ‘2’ decimal setting). Once the chargepump array 330 receives this ‘2’ setting, it will follow suit and powerdown eight of the ten parallel charge pumps 440 a-440 n. This saves onpower.

It should be noted that all of the pumps cannot be “switched-off” andcontinue to hold 10V on the touch sense array 121. There is unavoidableleakage and some DC current drain that requires at least one of the tenpumps to be on to sustain the 10V level. It should also be noted thateach of the 4-bit data is programmable, e.g., initially there may be 10charge pumps operating and then 1, or 8 and 2, 5 and 5, etc. For a givenapplication (panel type and size, speed and power requirements, etc.) itis likely that these values may not change once they are set.

In one embodiment, the sequencer 462 may be configured to outputindividual bits of control (e.g., 4 bits) to provide address signals fora thermometer decoder 463. Although 4 bits of control permit up to 16thermometer levels to be decode, only 10 are employed.

According to one embodiment, as shown by the dotted lines in FIG. 4, theelectronic system 100 may also include a stability compensationcapacitor 464, a ripple filter capacitor 466, and a bypass block 468 forpermitting the charge pump array 330 to operate on the power supplyvoltage, vdda.

Once the voltage on an output terminal 442 of the charge pump array 330has settled to a final voltage, it may supply a high voltageprogrammable current driver 332, which is configured to charge anddischarge the touch sense array 121.

FIG. 6 is a block diagram of one embodiment of the components of thefeedback scaler circuit 444. The feedback scaler circuit 444 may be, butis not limited to, a resistor string 670 with a scaling factor, of, forexample, about 0.1. A first output 672 of the resistor string 670 may becoupled to the op-amp 448 and includes a first portion of the resistorstring 670 connected to ground. A second output 674 of the resistorstring 670 may be coupled to the comparator 452 and may be configured totap a slightly greater amount of resistance of the resistor string 670,therefore providing a slightly higher voltage to the comparator 452 thanto the op-amp 448. In one embodiment, a range selection switch 676 finetunes the voltage presented to the comparator 452 even further at anumber of tap-off points of the resistor string 670.

The output 674 to the comparator 452 is set slightly higher than theoutput 672 to the op-amp 448. This ensures that the threshold signalstays high in a steady state. The op-amp 448 and the comparator 452 mayencounter offset voltages. These offsets may cause the comparatorthreshold signal to NOT go high when required. By setting a voltage atthe output 674 to the comparator 452 slightly higher than that at theoutput 672 to the op-amp 448, the offset problem may be overcome.

The situation is made more complex by having a programmable targetvoltage. A 15 mV offset at a 10V target voltage shrinks to about 4.5 mVat a 3V target voltage, and the non-trigger problem may re-occur. Tocounteract this phenomenon, “range” bits may select slightly differenttap-off points from the resistor string 670 via the range selectionswitch 676, depending on the programmed target voltage level.

FIG. 7 is a block diagram of one embodiment of the components of thereference generator circuit 456. The bandgap reference circuit 454, withan output reference voltage, Vbg, is an input to the electronic system100. A closed-loop op-amp 778 places a replica voltage level, vbg_buf,on a drain output terminal of a pass transistor 780. A resistor ladder782 provides 16 tap-off points 784 a-784 n. Each tap-off point (e.g.,784 a) provides for a different programmable target voltage level (e.g.,in the range of 3V-10V in 0.5V steps). Level control bits 786 select oneof the 16 levels via an analog multiplexor 788. An output voltage isthen supplied to both the comparator 452 and op-amp 448 coupled to thecharge pump array 330. FIG. 8 is a table of thermometer codesimplemented by the thermometer decoder 463. Thermometer control may beemployed in the implementation of digital-to-analog converters (DACs),where a binary DAC input code is transformed into a thermal equivalentfor the purpose of accessing each of the DAC cells. Otherimplementations of DACs may be used as would be appreciated by one ofordinary skill in the art having the benefit of this disclosure.

Similarly, each of the charge pumps 440 a-440 n of the charge pump array330 may be addressed to select a particular combination of charge pumps440 a-440 n. An example of a 4-to-16 thermometer code is shown in FIG.8. In one embodiment, up to decimal 10 are employed. Note that for thiscondition, d1 up to d10 are all “1”, indicating that all 10 parallelcharge pumps 440 a-440 n are to be turned ON. It would also beappreciated by one of ordinary skill in the art that the thermometerdecoder 463 may be implemented by standard combinational logic cells.

FIG. 9 is a block diagram of one embodiment of the components of thecharge pump array 330. Each of the charge pumps 440 a-440 n is a seriesadditive combination of stages 990 a-990 n (e.g., four), capable, in oneembodiment, of reaching 10 V from a 2.6 V supply voltage. As withconventional charge pumps, each of the stages 990 a-990 n of anindividual charge pump (e.g., 440 a) is first charged to a supplyvoltage and then the charged stages 990 a-990 n are connected in seriesto produce a total output voltage on the individual charge pump (e.g.,440 a) that is greater than the supply voltage. A clock 992 ripplesthrough each stage of the first pump 990 a, and continues to the nextpump 990 b, and so on. The clock ripple scheme reduces electromagneticinterference (EMI) by staggering the clock edges. The signal vdda_reg isthe input to the first pump stage 990 a in each of the charge pumps 440a-440 n. The signal vdda_reg is the supply to the final stage of theclock drivers in each pump stage 990 a-990 n. The outputs of each of thecharge pumps 440 a-440 n are connected together in parallel. Theinternal voltage nodes of each pump stage 990 a-990 n are connectedtogether (i.e., all of the vout1, vout2, vout3 nodes are connectedtogether). The input clock to each of the charge pumps 440 a-440 n isANDed with an individual enable signal. When the signal “en” is high,the clock is permitted to pass and the charge pumps 440 a-440 n operate.When the signal “en” is low, the clock is stopped and all followingcharge pumps 440 a-440 n are disabled.

FIG. 10 is a block diagram one embodiment of the components of a singlestage (e.g., 990 a) of the charge pumps 440 a-440 n of the charge pumparray 330. An input signal clk_in originates from a previous stage. Aninverter 1092 delays the clock, and the signal clk_out is fed to thenext stage. The signal clk_in is fed to a non-overlapping clockgenerator 1094. This produces signals clk and clkb, with vdda as thesupply. Buffer cells 1096 operate from the voltage vdda_reg, and producethe signals phi and phib signals. The phi and phib signals are fed topumping capacitors 1098, which in turn are coupled to pump celltransistors 1010 for transfer of energy by adding the energy to vin. Theadditive gain through 4 stages is 4*vdda_reg. The voltage on the outputterminal 442 of the charge pump array 330 is thenvcctshv=vdda+4*vdda_reg, since the voltage vdda is the input to the 1ststage, and each stage adds an additional voltage vdda_reg.

FIG. 11 is a block diagram of one embodiment of the components of thehigh voltage programmable current driver 332. The supply to the highvoltage programmable current driver 332, vcctshv, is the output of thecharge pump array 330 (in addition to ground). An input AC controlsignal 1102 (e.g., a 100 KHz square wave in the range of 0 V to 1.8 Voriginating from CMOS logic) is coupled to an input terminal 1104 of thehigh voltage programmable current driver 332. The high voltageprogrammable current driver 332 includes an adjustable (and thereforeprogrammable) current sink reference 1106 and a number of currentsources/sinks, 1108, 1110, 1112, 1114. The current sink reference 1106is mirrored 20× to current source 1110. The current source 1110 is anNMOS current sink, and is configured to discharge VTX to 0V when theinput control signal 1102 is low. The current source 1114 is OFF in thiscondition. When control signal 1102 is high, the current source 1110 isOFF. Input current is mirrored 20X to the current source 1114, which isa PMOS current source. The current source 1114 is then configured tocharge VTX to the target level (e.g. 10V), so as to produce a highvoltage output signal at an output terminal 1116 (e.g., 10 V at 100KHz).

Referring again to FIG. 3, an equivalent circuit of the high voltageprogrammable current driver 332 is a current source 318 coupled betweensupply “vcctshv” and the output terminal 1116 of the high voltageprogrammable current driver 332, and a current sink 320 coupled betweenthe output terminal 1116 of the high voltage programmable current driver332 and a common terminal (e.g., ground). When the high voltageprogrammable current driver 332 is connected to a capacitive load suchas between two electrodes of the touch sense array 121 of FIG. 1, thisresults in an increasing, then decreasing, voltage ramp on one inputelectrode of the touch sense array 121 (i.e., a triangle wave).

An explanation for the use of a combination current source/sink highvoltage current driver 332 is as follows. If the TX signal issubstantially a square wave having very sharp edges (high dV/dt), highcurrent spikes result when these edges are applied to a capacitive load.This may lead to saturation effects on the RX side as it may beoverwhelmed by inrushing current, and it may create undesired spikes inthe power supply, vdda, of the electronic system 100 of FIG. 1. This inturn may negatively impact other system components.

The slopes of the TX signal may be reduced without reducing thefrequency of the TX signal. In this context, a high TX frequency may bebetter than a low frequency, since more of the signal can be produced ina shorter amount of time. Reducing the slope of a square-wave maygradually produce the shape of a triangle wave. Slowing the edges of asquare wave signal feeding into a capacitive load is equivalent tolimiting the current it can provide. Signal drivers operating in thismode are sometimes referred to as “current starved” drivers. At theircore, “current starved” drivers are current sources and sinks with a setcurrent capability. In other words, such a “current starved” driver hascurrent sources/sinks built into its driver stages, limiting its drivecapability to the maximum current that the current sinks/source mayhandle. These limits can be made programmable.

If the output of the charge pump array 330 of FIG. 4 is connected to thecurrent-starved high voltage current driver 332, programmable voltageslopes and programmable voltage levels may be provided. Moreparticularly, a programmable current sink/source connected to acapacitive load, when activated, can drive a current into the capacitiveload (i.e., the touch sense array 121) and continues to do so until atarget voltage has been reached. The current is produced by theprogrammable charge pump array 330 which is configured to produce anoutput current at voltages higher than the supply voltage. Thus, as thevoltage builds on the touch sense array 121, the corresponding TX signalramps up until the maximum voltage achievable with the charge pump array330 has been reached.

It is worth noting that only the “charge-up” process of the TX signalrequires the charge pump array 330 to be active. To “charge down”, othercircuitry may be used. For example, a current sink can discharge thetouch sense array 121 at a controlled (and programmable) rate. As aresult, the charge pump array 330 can remain inactive during thecharge-down phase and thus not waste any power.

However, in one embodiment, two TX signals may be produced which arecomplementary in nature: while one TX signal charges up, the othercharges down. The one charging up requires the charge pump array 330 tobe active, whereas the one charging down employs a switch or a currentsink, as described above. Then, during the next phase of the TX signal,the first signal charges down, and the charge pump array 330 now servesthe second TX signal so as to charge up. In this scenario, the chargepump array 330 is active all the time, but it serves two TX signalswhich can be used for creating advanced stimulus signals.

FIG. 12 is a flow diagram 1200 of one embodiment of a method foroperating the circuit of FIG. 4. At block 1202, the charge pump array330 supplies a supply voltage on an output terminal 442 to the highvoltage current driver 332 and thence to an electrode of the touch sensearray 121. The first feedback circuit 334 is configured to measure thevoltage on the output terminal 442. At block 1204, the first feedbackcircuit 334 selects different combinations of the charge pumps 440 a-440n to maintain the voltage on the output terminal 442.

FIG. 13 is a flow diagram illustrating one embodiment of selectingdifferent combinations of the charge pumps 440 a-440 n of FIG. 12. Atblock 1302, the first feedback circuit 334 selects a first combinationof the charge pumps 440 a-440 n when the voltage on the output terminal442 of the charge pump array 330 is more than a threshold level. At step1304, the first feedback circuit 334 selects a second combination of thecharge pumps 440 a-440 n when the voltage on the output terminal 442 isless than the threshold voltage.

Embodiments of the present invention, described herein, include variousoperations. These operations may be performed by hardware components,software, firmware, or a combination thereof. As used herein, the term“coupled to” may mean coupled directly or indirectly through one or moreintervening components. Any of the signals provided over various busesdescribed herein may be time multiplexed with other signals and providedover one or more common buses. Additionally, the interconnection betweencircuit components or blocks may be shown as buses or as single signallines. Each of the buses may alternatively be one or more single signallines and each of the single signal lines may alternatively be buses.

Certain embodiments may be implemented as a computer program productthat may include instructions stored on a computer-readable medium.These instructions may be used to program a general-purpose orspecial-purpose processor to perform the described operations. Acomputer-readable medium includes any mechanism for storing ortransmitting information in a form (e.g., software, processingapplication) readable by a machine (e.g., a computer). Thecomputer-readable storage medium may include, but is not limited to,magnetic storage medium (e.g., floppy diskette); optical storage medium(e.g., CD-ROM); magneto-optical storage medium; read-only memory (ROM);random-access memory (RAM); erasable programmable memory (e.g., EPROMand EEPROM); flash memory, or another type of medium suitable forstoring electronic instructions. The computer-readable transmissionmedium includes, but is not limited to, electrical, optical, acoustical,or other form of propagated signal (e.g., carrier waves, infraredsignals, digital signals, or the like), or another type of mediumsuitable for transmitting electronic instructions.

Additionally, some embodiments may be practiced in distributed computingenvironments where the computer-readable medium is stored on and/orexecuted by more than one computer system. In addition, the informationtransferred between computer systems may either be pulled or pushedacross the transmission medium connecting the computer systems.

Although the operations of the method(s) herein are shown and describedin a particular order, the order of the operations of each method may bealtered so that certain operations may be performed in an inverse orderor so that certain operation may be performed, at least in part,concurrently with other operations. In another embodiment, instructionsor sub-operations of distinct operations may be in an intermittentand/or alternating manner.

In the foregoing specification, the invention has been described withreference to specific exemplary embodiments thereof. It will, however,be evident that various modifications and changes may be made theretowithout departing from the broader spirit and scope of the invention asset forth in the appended claims. The specification and drawings are,accordingly, to be regarded in an illustrative sense rather than arestrictive sense.

What is claimed is:
 1. A circuit, comprising: a driver to supply avoltage on an output terminal to an electrode of a touch sense array; acharge pump array coupled to the driver, the charge pump arraycomprising a plurality of charge pumps to supply an input voltage on aterminal of the charge pump array to the driver; and a first feedbackcircuit coupled to the charge pump array, wherein the first feedbackcircuit is configured to measure the input voltage and to select a firstcombination of the plurality of charge pumps when the input voltage ismore than a threshold level and to select a second combination of theplurality of charge pumps when the input voltage is less than thethreshold voltage, wherein the second combination comprises fewer chargepumps than the first combination.
 2. The circuit of claim 1, whereineach of the plurality of charge pumps comprises a plurality of pumpstages connected in series and configured to store up to an amount ofvoltage equal to the input voltage.
 3. The circuit of claim 1, whereinthe input voltage is programmable.
 4. The circuit of claim 1, whereinthe first feedback circuit comprises a feedback scaler circuit coupledto the charge pump array, wherein the feedback scaler circuit configuredto produce a first voltage proportional to the input voltage.
 5. Thecircuit of claim 4, wherein the first feedback circuit further comprisesa comparator coupled to the feedback scaler circuit.
 6. The circuit ofclaim 5, wherein the first feedback circuit further comprises areference generator configured to produce a reference voltage coupled tothe comparator.
 7. The circuit of claim 6, wherein the referencegenerator is configured to select the input voltage of the charge pumparray.
 8. The circuit of claim 1, further comprising a second feedbackcoupled to the charge pump array and configured to provide a referencevoltage to the charge pump array.
 9. A circuit, comprising: amultiplexor coupled to a corresponding one of a plurality of inputelectrodes of a touch sense array, wherein each of the input electrodesis configured to selectively receive a driving current; a current drivercoupled to at least one input terminal of the multiplexor; a charge pumparray coupled to the current driver, the charge pump array comprising aplurality of charge pumps to supply an input voltage on a terminal ofthe charge pump array to the current driver; and a first feedbackcircuit coupled to the charge pump array, wherein the first feedbackcircuit is configured to measure the input voltage and to select a firstcombination of the plurality of charge pumps when the input voltage ismore than a threshold level and to select a second combination of theplurality of charge pumps when the input voltage is less than thethreshold voltage, wherein the second combination comprises fewer chargepumps than the first combination.
 10. The circuit of claim 9, whereinthe first feedback circuit comprises a feedback scaler circuit coupledto the charge pump array, wherein the feedback scaler circuit isconfigured to produce a first voltage proportional to the input voltage.11. The circuit of claim 10, wherein the first feedback circuit furthercomprises a comparator coupled to the feedback scaler circuit.
 12. Thecircuit of claim 11, wherein the first feedback circuit furthercomprises a reference generator configured to produce a referencevoltage coupled to the comparator.
 13. The circuit of claim 9, whereinthe current driver comprises: a current source coupled between theterminal of the charge pump array and an output terminal of the currentdriver; and a current sink coupled between the output terminal of thecurrent driver and a common terminal.
 14. A method for driving a touchsense array, comprising: supplying, using a charge pump array comprisinga plurality of charge pumps, a voltage on an output terminal to anelectrode of a touch sense array; and selecting, via a feedback circuitcoupled to the charge pump array, a first combination of the pluralityof charge pumps when the input voltage is more than a threshold leveland to select a second combination of the plurality of charge pumps whenthe input voltage is less than the threshold voltage, wherein the secondcombination comprises fewer charge pumps than the first combination.